Test the entire system, end to end. A little while before the scheduled release date, testing it all at once. Best used in conjunction with doing all the Design first . Also fits well with strategies with lots of work thrown over the wall; since that is exactly how the customer is going get the system.
Big bang testing is left very late in the project, and should be done using the tools you have already built. Invite the Customer to have real humans sit down with the system and test it. That's the best way to find out how good it really is.
For best results, do lots of testing beforehand. To do so will improve the coverage of big bang testing. No one likes bad news.
In this situation, a period of time marked "testing" on the project plan is in reality the slack time. It's never intended for real development, because if you design at the very end, you cannot possibly have the time to fix or change the broken pieces.